package Java实验.实验七;

import java.io.*;
import java.net.Socket;
import java.util.Scanner;

public class SocketTest {
    public static void main(String[] args) throws IOException {
        System.out.println("请输入需要上传的文件名：");
        // 获取给定的文件路径
        Scanner sc = new Scanner(System.in);
        String str = sc.nextLine();
        // 创建本地字节输入流对象
        FileInputStream fis  = new FileInputStream(str);
        // 创建客户端Socket对象
        Socket s = new Socket("192.168.189.1", 8127);

        // 创建网络字节流输出流对象
        OutputStream os = s.getOutputStream();

        // 读取本地文件
        // 使用网络字节输出流把文件上传到服务器
        byte[] bys = new byte[1024];
        /*int len;
        while((len = fis.read(bys)) != -1) {
            os.write(bys, 0, len);
        }*/
        int len = fis.read(bys);
        os.write(bys,0,len);

        // 关闭网络输出流
        s.shutdownOutput();

        // 获取服务器返回的数据
        InputStream is = s.getInputStream();
        byte[] bys1 = new byte[1024];
        int len1 = is.read(bys1);
        System.out.println("服务器发来信息：" + new String(bys1, 0, len1));

        // 释放资源
        fis.close();
        s.close();
    }
}

/*测试数据：idea_test\\test\\a.txt*/